Internet server systems are now a critical component to many successful businesses. Many Internet server systems are configured to function as e-commerce web sites where computer users can purchase goods and services. The efficient and reliable operation of the e-commerce web site is vital to many businesses.
In response to the need for efficient and reliable e-commerce web sites, test systems have been developed to ensure that the web site is operating within tolerable thresholds. These test systems perform automated tests using transactions that were previously recorded. To the web site, the test transaction appears like another customer. These test user transactions are able to determine how long a typical transaction takes and whether or not the e-commerce web site is responding at all.
Unfortunately, current test systems treat the Internet server system that provides the e-commerce web site as a black box—meaning that the test system sends in stimulus and measures response. Test systems do not effectively correlate user test results with internal performance measurements from the Internet server system. If there is a problem, the test system does not effectively isolate the responsible component within the Internet server system.
Current test systems also fail to correlate system testing and performance data with business performance data. Business performance data may only be produced in weekly or monthly reports. If the web site operator receives an alarm from a test system, another system must be used to assess the financial damage due to the system error. The use of multiple systems is complex and time consuming.
For effective testing, the test transactions must be properly configured. As the web site changes, new features and equipment need new test transactions for testing. In a typical sequence to configure a transaction, the user operates a web browser to interact with the web site, and the web browser activity is recorded by a system in between the web browser and the web site. The recorded activity forms the test transaction that is saved for subsequent automated testing.
To put up a web site, the business often uses another entity to provide the web site infrastructure, such as an Internet Service provider (ISP), that owns and operates Internet server systems. The business must interact with the ISP to generate and implement new test transactions. Often, the business receives some client software that it operates with a web browser to generate and implement test transactions through the ISP. Different versions of the client software must be developed for the different web browsers, and possibly for the different versions of the same web browser. Unfortunately, the client software also requires the use of cookies or Java applets that can be too complex for some business users—especially since the ISP is supposed to handle the technical aspects of the web site. Cookies are files that are transferred to the web browser for local storage and use by a web server. Many people dislike storing cookies on their machines.
The cookies and Java applets are required when configuring a transaction to maintain the proper configuration sequence or state. Without proper management, a non-technical user may be easily lost in a transaction configuration sequence. The problem becomes acute when the non-technical user begins to use forward and backward browser commands during a recording session.
Another problem during transaction recording occurs when secure Internet connections are invoked. Secure connections are often used for Internet commerce and need to be tested—especially their effects on transaction time. Configuration tools between the web browser and the web site that record web browser activity must decrypt the web browser activity to record a secure transaction. Thus, the recording component must either have access to the security keys or must be integrated with the web browser. Both of these techniques add too much complexity to the configuration tool.